import { ActivePill } from '@/components/blocks/active-pill/active-pill'; import { EvmAddress } from '@/components/blocks/evm-address/evm-address'; import type { TabItemProps } from '@/components/blocks/tab-navigation/tab-item'; import { TabNavigation } from '@/components/blocks/tab-navigation/tab-navigation'; import { PageHeader } from '@/components/layout/page-header'; import { Button } from '@/components/ui/button'; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; import { EvmAddressBalances } from '@/components/ui/evm-address-balances'; import { ChevronDown } from 'lucide-react'; import type { Metadata } from 'next'; import type { PropsWithChildren } from 'react'; import type { Address } from 'viem'; import { BurnButton } from './_components/burn-form/button'; import { getFundTitle } from './_components/data'; import { MintButton } from './_components/mint-form/button'; import { PauseButton } from './_components/pause-form/button'; interface LayoutProps extends PropsWithChildren { params: Promise<{ id: string; }>; } export async function generateMetadata({ params }: LayoutProps): Promise { const { id } = await params; const fund = await getFundTitle(id); if (!fund) { return { title: 'Fund not found', }; } return { title: fund?.name, openGraph: { images: [ { url: `/share/funds/${id}/og`, width: 1280, height: 640, alt: fund?.name, }, ], }, twitter: { images: [ { url: `/share/funds/${id}/og`, width: 1280, height: 640, alt: fund?.name, }, ], }, }; } const tabs = (id: string): TabItemProps[] => [ { name: 'Details', href: `/admin/funds/${id}`, }, { name: 'Holders', href: `/admin/funds/${id}/holders`, }, { name: 'Events', href: `/admin/funds/${id}/events`, }, // { // name: 'Permissions', // href: `/admin/funds/${id}/token-permissions`, // }, ]; export default async function FundsDetailLayout({ children, params }: LayoutProps) { const { id } = await params; const fund = await getFundTitle(id); return (
{fund?.name} ({fund?.symbol}) } subtitle={ } pill={} button={ 0 ? (fund.holders[0].value ?? 0) : 0)} /> } />
{children}
); }